//未来构建近似或则并行压缩
module parallel_compressor
	#(parameter length = 16)
	(
		input signed [2*length-1:0] Mult_result0,
		input signed [2*length-1:0] Mult_result1,
		input signed [2*length-1:0] Mult_result2,
		input signed [2*length-1:0] Mult_result3,
		input signed [2*length-1:0] Mult_result4,
		input signed [2*length-1:0] Mult_result5,
		input signed [2*length-1:0] Mult_result6,
		input signed [2*length-1:0] Mult_result7,
		input signed [2*length-1:0] Mult_result8,
		input signed [2*length-1:0] Mult_result9,
		input signed [2*length-1:0] Mult_result10,
		input signed [2*length-1:0] Mult_result11,
		input signed [2*length-1:0] Mult_result12,
		input signed [2*length-1:0] Mult_result13,
		input signed [2*length-1:0] Mult_result14,
		input signed [2*length-1:0] Mult_result15,
		input signed [2*length-1:0] Mult_result16,
		input signed [2*length-1:0] Mult_result17,
		input signed [2*length-1:0] Mult_result18,
		input signed [2*length-1:0] Mult_result19,
		input signed [2*length-1:0] Mult_result20,
		input signed [2*length-1:0] Mult_result21,
		input signed [2*length-1:0] Mult_result22,
		input signed [2*length-1:0] Mult_result23,
		input signed [2*length-1:0] Mult_result24,
		input signed [2*length-1:0] Mult_result25,
		input signed [2*length-1:0] Mult_result26,
		input signed [2*length-1:0] Mult_result27,
		input signed [2*length-1:0] Mult_result28,
		input signed [2*length-1:0] Mult_result29,
		input signed [2*length-1:0] Mult_result30,
		input signed [2*length-1:0] Mult_result31,

		output signed [2*length+4:0] parallel_compressor_out
		);

assign parallel_compressor_out = Mult_result0+Mult_result1+Mult_result2+Mult_result3+Mult_result4+Mult_result5+Mult_result6+Mult_result7+Mult_result8+Mult_result9+Mult_result10+Mult_result11+Mult_result12+Mult_result13+Mult_result14+Mult_result15+Mult_result16+Mult_result17+Mult_result18+Mult_result19+Mult_result20+Mult_result21+Mult_result22+Mult_result23+Mult_result24+Mult_result25+Mult_result26+Mult_result27+Mult_result28+Mult_result29+Mult_result30+Mult_result31;

endmodule